package com.tengju.user.domain.model.sign;

import com.tengju.user.domain.model.Row;
import com.tengju.user.domain.model.user.StarChangeRecord;
import com.tengju.user.domain.model.user.StarChangeRecordId;
import com.tengju.user.domain.model.user.UserIdCode;

import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;

public interface StarChangeRecordRepository {

    StarChangeRecord getById(StarChangeRecordId id);

    void saveStarChangeRecord(StarChangeRecord starChangeRecord);

    List<StarChangeRecord> listStarChangeRecord(UserIdCode idCode);

    List<StarChangeRecord> batchGetLastChangeRecord(List<UserIdCode> idCodes);

    List<StarChangeRecord> getStarChangeRecordList(Date startTime, Date endTime);

    List<Row> signNew(LocalDateTime timeFrom,LocalDateTime timeTo);
}
